Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## java.awt.event
Class HierarchyEvent

    java.lang.Object
      |
      +--java.util.EventObject
            |
            +--java.awt.AWTEvent
                  |
                  +--java.awt.event.HierarchyEvent

All Implemented Interfaces:
  Serializable

public class HierarchyEvent
extends AWTEvent

An event which indicates a change to the `Component` hierarchy to which a `Component` belongs.

- Hierarchy Change Events (HierarchyListener)
  - addition of an ancestor
  - removal of an ancestor
  - hierarchy made displayable
  - hierarchy made undisplayable
  - hierarchy shown on the screen (both visible and displayable)
  - hierarchy hidden on the screen (either invisible or undisplayable)
- Ancestor Reshape Events (HierarchyBoundsListener)
  - an ancestor was resized
  - an ancestor was moved

Hierarchy events are provided for notification purposes ONLY. The AWT will automatically handle changes to the hierarchy internally so that GUI layout and displayability works properly regardless of whether a program is receiving these events or not.

This event is generated by a Container object (such as a Panel) when the Container is added, removed, moved, or resized, and passed down the hierarchy. It is also generated by a Component object when that object's `addNotify`, `removeNotify`, `show`, or `hide` method is called. ANCESTOR_MOVED and ANCESTOR_RESIZED events are dispatched to every `HierarchyBoundsListener` or `HierarchyBoundsAdapter` object which registered to receive such events using the Component's `addHierarchyBoundsListener` method. (`HierarchyBoundsAdapter` objects implement the `HierarchyBoundsListener` interface.) HIERARCHY_CHANGED events are dispatched to every `HierarchyListener` object which registered to receive such events using the Component's `addHierarchyListener` method. Each such listener object gets this `HierarchyEvent` when the event occurs.

Since:
  1.3
See Also:
  `HierarchyListener`, `HierarchyBoundsAdapter`, `HierarchyBoundsListener`, Serialized Form

Field Summary
`static int` | `ANCESTOR_MOVED` The event id indicating an ancestor-Container was moved.
`static int` | `ANCESTOR_RESIZED` The event id indicating an ancestor-Container was resized.
`static int` | `DISPLAYABILITY_CHANGED` Indicates that the `HIERARCHY_CHANGED` event was generated due to a change in the displayability of the hierarchy.
`static int` | `HIERARCHY_CHANGED` The event id indicating that modification was made to the entire hierarchy tree.
`static int` | `HIERARCHY_FIRST` Marks the first integer id for the range of hierarchy event ids.
`static int` | `HIERARCHY_LAST` Marks the last integer id for the range of ancestor event ids.
`static int` | `PARENT_CHANGED` Indicates that the `HIERARCHY_CHANGED` event was generated by a reparenting operation.
`static int` | `SHOWING_CHANGED` Indicates that the `HIERARCHY_CHANGED` event was generated due to a change in the showing state of the hierarchy.

Fields inherited from class java.awt.AWTEvent
`ACTION_EVENT_MASK, ADJUSTMENT_EVENT_MASK, COMPONENT_EVENT_MASK, consumed, CONTAINER_EVENT_MASK, FOCUS_EVENT_MASK, HIERARCHY_BOUNDS_EVENT_MASK, HIERARCHY_EVENT_MASK, id, INPUT_METHOD_EVENT_MASK, INVOCATION_EVENT_MASK, ITEM_EVENT_MASK, KEY_EVENT_MASK, MOUSE_EVENT_MASK, MOUSE_MOTION_EVENT_MASK, MOUSE_WHEEL_EVENT_MASK, PAINT_EVENT_MASK, RESERVED_ID_MAX, TEXT_EVENT_MASK, WINDOW_EVENT_MASK, WINDOW_FOCUS_EVENT_MASK, WINDOW_STATE_EVENT_MASK`

Fields inherited from class java.util.EventObject
`source`

Constructor Summary
`HierarchyEvent(Component source, int id, Component changed, Container changedParent)` Constructs an `HierarchyEvent` object to identify a change in the `Component` hierarchy.
`HierarchyEvent(Component source, int id, Component changed, Container changedParent, long changeFlags)` Constructs an `HierarchyEvent` object to identify a change in the `Component` hierarchy.

Method Summary
`Component` | `getChanged()` Returns the Component at the top of the hierarchy which was changed.
`Container` | `getChangedParent()` Returns the parent of the Component returned by `getChanged()`.
`long` | `getChangeFlags()` Returns a bitmask which indicates the type(s) of HIERARCHY_CHANGED events represented in this event object.
`Component` | `getComponent()` Returns the originator of the event.
`String` | `paramString()` Returns a parameter string identifying this event.

Methods inherited from class java.awt.AWTEvent
`consume, getID, isConsumed, setSource, toString`

Methods inherited from class java.util.EventObject
`getSource`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### HIERARCHY_FIRST

    public static final int HIERARCHY_FIRST

  Marks the first integer id for the range of hierarchy event ids.

  See Also:
    Constant Field Values

### HIERARCHY_CHANGED

    public static final int HIERARCHY_CHANGED

  The event id indicating that modification was made to the entire hierarchy tree.

  See Also:
    Constant Field Values

### ANCESTOR_MOVED

    public static final int ANCESTOR_MOVED

  The event id indicating an ancestor-Container was moved.

  See Also:
    Constant Field Values

### ANCESTOR_RESIZED

    public static final int ANCESTOR_RESIZED

  The event id indicating an ancestor-Container was resized.

  See Also:
    Constant Field Values

### HIERARCHY_LAST

    public static final int HIERARCHY_LAST

  Marks the last integer id for the range of ancestor event ids.

  See Also:
    Constant Field Values

### PARENT_CHANGED

    public static final int PARENT_CHANGED

  Indicates that the `HIERARCHY_CHANGED` event was generated by a reparenting operation.

  See Also:
    Constant Field Values

### DISPLAYABILITY_CHANGED

    public static final int DISPLAYABILITY_CHANGED

  Indicates that the `HIERARCHY_CHANGED` event was generated due to a change in the displayability of the hierarchy. To discern the current displayability of the hierarchy, call `Component.isDisplayable`. Displayability changes occur in response to explicit or implicit calls to `Component.addNotify` and `Component.removeNotify`.

  See Also:
    `Component.isDisplayable()`, `Component.addNotify()`, `Component.removeNotify()`, Constant Field Values

### SHOWING_CHANGED

    public static final int SHOWING_CHANGED

  Indicates that the `HIERARCHY_CHANGED` event was generated due to a change in the showing state of the hierarchy. To discern the current showing state of the hierarchy, call `Component.isShowing`. Showing state changes occur when either the displayability or visibility of the hierarchy occurs. Visibility changes occur in response to explicit or implicit calls to `Component.show` and `Component.hide`.

  See Also:
    `Component.isShowing()`, `Component.addNotify()`, `Component.removeNotify()`, `Component.show()`, `Component.hide()`, Constant Field Values

Constructor Detail

### HierarchyEvent

    public HierarchyEvent(Component source,
                          int id,
                          Component changed,
                          Container changedParent)

  Constructs an `HierarchyEvent` object to identify a change in the `Component` hierarchy.

  Note that passing in an invalid `id` results in unspecified behavior.

Parameters:
  `source` - the `Component` object that originated the event
  `id` - an integer indicating the type of event
  `changed` - the `Component` at the top of the hierarchy which was changed
  `changedParent` - the parent of `changed`; this may be the parent before or after the change, depending on the type of change

### HierarchyEvent

    public HierarchyEvent(Component source,
                          int id,
                          Component changed,
                          Container changedParent,
                          long changeFlags)

  Constructs an `HierarchyEvent` object to identify a change in the `Component` hierarchy.

  Note that passing in an invalid `id` results in unspecified behavior.

Parameters:
  `source` - the `Component` object that originated the event
  `id` - an integer indicating the type of event
  `changed` - the `Component` at the top of the hierarchy which was changed
  `changedParent` - the parent of `changed`; this may be the parent before or after the change, depending on the type of change
  `changeFlags` - a bitmask which indicates the type(s) of `HIERARCHY_CHANGED` events represented in this event object

Method Detail

### getComponent

    public Component getComponent()

  Returns the originator of the event.

  Returns:
    the `Component` object that originated the event, or `null` if the object is not a `Component`.

### getChanged

    public Component getChanged()

  Returns the Component at the top of the hierarchy which was changed.

  Returns:
    the changed Component

### getChangedParent

    public Container getChangedParent()

  Returns the parent of the Component returned by `getChanged()`. For a HIERARCHY_CHANGED event where the change was of type PARENT_CHANGED via a call to `Container.add`, the parent returned is the parent after the add operation. For a HIERARCHY_CHANGED event where the change was of type PARENT_CHANGED via a call to `Container.remove`, the parent returned is the parent before the remove operation. For all other events and types, the parent returned is the parent during the operation.

  Returns:
    the parent of the changed Component

### getChangeFlags

    public long getChangeFlags()

  Returns a bitmask which indicates the type(s) of HIERARCHY_CHANGED events represented in this event object. The bits have been bitwise-ored together.

  Returns:
    the bitmask, or 0 if this is not an HIERARCHY_CHANGED event

### paramString

    public String paramString()

  Returns a parameter string identifying this event. This method is useful for event-logging and for debugging.

  Overrides:
    `paramString` in class `AWTEvent`
  Returns:
    a string identifying the event and its attributes

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Java, Java 2D, and JDBC are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.